<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 原型和原型链
    // 自函数起的原型链

    // function fn() {

    // }
    // console.dir(fn);
    // console.dir(Array);


    // call apply bind =>函数的拓展方法 => 所有函数均可以使用 => 在函数执行时,改变上下文中的this指向

    // fn.call(thisObj,arg1,arg2...argN)
    // fn.apply(thisObj,[arg1,arg2...argN])

    // var newFn = fn.bind(thisObj,arg1,arg2...argN)
    // newFn()  => this -> thisObj
    // Math.min(1, 4, 7, 2, 5, 8, 3, 6, 9);
    // Math.min.apply(null, [1, 4, 7, 2, 5, 8, 3, 6, 9]);
    
    // Array.prototype.slice.call(伪数组)
    
    // 判断数据是否是纯对象
    // console.log(Object.prototype.toString.call({}) === "[object Object]");
    
    // Math.min.apply(null, [1, 4, 7, 2, 5, 8, 3, 6, 9]);


    // 面向对象之继承
    // 让一个类 继承 另一个 的属性和方法(实例化对象 / 原型对象)  重新定义,追加自己的属性和方法
        
    // 构造函数继承  原型继承  组合继承







</script>

</html>